Today's Question:  What does your personal desk look like?        GIVE A SHOUT

SEARCH KEYWORD -- Programming knowledge



  The Erlang Design Pattern

Over the last couple of weeks I did an OO programming experiment. I call it the Erlang design pattern. It is based on the Actor model but goes some steps further. At its core just like the Actor model there are active entities (objects) that have a thread and a message queue with the thread waiting on the message queue to do some stuff. The Erlang design pattern extends the Actor model by first dividing the software program into active (actors, that have their own thread) and passive ...

   Erlang,Thread,Pattern,OS Threads     2012-02-06 07:47:56

  How to Understand and Use nil in Golang Correctly?

In Golang, nil is a predefined identifier that carries different meanings in various contexts, but typically represents "none", "empty" or "zero value". It can be assigned to variables of pointer, slice, map, channel, function, and interface types. Understanding the significance of nil is crucial for writing robust Go programs, as mishandling nil can lead to unexpected issues. nil in Pointers In Go, pointers are a fundamental type that stores the memory address of a variable. When a pointer is d...

   FUNCTION,SLICE,MAP,CHANNEL,GOLANG,NIL     2024-01-05 05:19:40

  C++ : string beginWith and endWith

C++ is an very powerful programming language. It is efficient and flexible. When writing C++ programs, we may often need to process strings and often we need to check whether a string begin with some substring or end with some substring. We can use following functions to ahieve these:     static bool beginWith(const std::string str,const std::string needle){        return (!str.compare(0,needle.length(),needle));    }    ...

   C++,beginWith,endWith,     2012-08-31 06:53:44

  Don't write on the whiteboard

I recently interviewed at a major technology company. I won't mention the name because, honestly, I can't remember whether I signed an NDA, much less how strong it was.I did well. Mostly because of luck. I normally step over myself when I interview. I guess I've improved over the years. Here are a few tips to ace your own interview.1. Don't write on the whiteboardWhen I interviewed at Palantir around 5 years ago, I had a lot of trouble with this. Yes, I knew next to nothing about compu...

   Interview,Preparation,Whiteboard,Note,Python     2012-01-11 11:31:32

  Bing now supports code search

In programmer's daily life, much time is spent on searching Google or StackOverflow for code snippets which can help them understand how the code works. Now there is one more option. Microsoft's Bing now adds a new feature which support code snippet search. With this new feature, you can search code snippet and execute them directly within the search results. For example, if you type "quick sort java", you will see below search result : This feature now supports a few popular programming langua...

   BING,CODE SEARCH,HACKERRANK     2016-04-09 02:49:25

  Haskell’s effect on my C++: exploit the type system

Like most programmers, I was attracted to Scheme by the promise that it would make me a better programmer. I came to appreciate the functional style, but swapped to Haskell, a more developed language with a rapidly developing standard library. Unfortunately, for me, Haskell can’t yet replace C++ on a day to day basis, so I reluctantly spend my days tapping away at C++. So, were the promises true? has functional programming made me a better programmer? Better is a tough question,...

   Haskell,C++,Type system,Comparison     2012-02-06 07:44:35

  Do things, tell people.

These are the only things you need to do to be successful*. You can get away with just doing one of the two, but that's rare, and usually someone else is doing the other part for you. If you you don't have any marketable skills, learn some. It's the future. We have Khan Academy and Wikipedia and Codecademy and almost the entire world's collective knowledge at your fingertips. Use it. Then make something that you can talk about. Make something cool. Something interesting. Spend time on it. Go ...

   Tihings,Promote,Product,Open source     2012-02-21 05:28:39

  JavaScript as a First Language

At Khan Academy we've been investigating teaching Computer Science to students in some new and interesting ways. The most interesting aspect of which is that we're likely going to be teaching them JavaScript as their first language. We're in a very unique position as we're primarily aiming to teach students who've been through our previous math and science-centric curriculum. Because of this we can create some rather compelling exercises and projects that never would've been feasible other...

   JavaScript,Learning,First language,Inheritence,Prototype     2011-12-23 07:53:45

  Hey kids, just say NO to programming !

Cory Doctorow's latest talk 'The Coming War on General Purpose Computing' really puts things in perspective about life in the 21st century. This got me thinking more about functional programming languages and how they are related to the intentional limitation/crippling of turing machines by industry and government. What if Stallman is right about the intentional efforts to limit freedom of information ? What if it's even worse than we all think it is ? In relation to functional languages ...

   Programming,Factor,View,Kids,No     2012-01-16 10:16:19

  Interview Programming Problems Done Right

Introduction Why 37signals Doesn't Hire Programmers Based on Brainteasers and my comment on HN generated a lot of responses, so much so that I'm writing this post to properly explain the essence of a good (IMHO) interview programming problem. Pascal's Triangle Pascal's Triangle is a shortcut for getting coefficients most often used binomial probability. The root element is 1. Every other element is the sum of the one or two above it (diagonally left and diagonally right). There are severa...

   Interview,Programming problem,Pascal,Triangle     2012-01-06 09:46:43